package com.zhanghp.class01;

import com.zhanghp.class01.sort.utils.SortUtils;
import com.zhanghp.utils.CommonUtils;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.ArrayList;
import java.util.List;

/**
 * @author zhanghp
 * @date 2023/8/11 9:55
 */
public class TemporaryTest {
    public static void main(String[] args) {
//        int min = 1;
//        int max = 4;
//        int offset = 0;
//        // 为什么这么能算出所需移位的数
//        // 就比如 8 4 2 1 ，当前以移位的数值永远大于前几位的和
//        // 所以当达到
//        while ((1 << offset) < max) {
//            offset++;
//        }
//        System.out.println(offset);
        // ------------------------>

        // sum | +

//        for (int i = 0; i < CommonUtils.TEST_COUNT; i++) {
//            int[] rand = SortUtils.rand(4);
//            int sum = 0;
//            int orSum = 0;
//            for (int j = 0; j < rand.length; j++) {
//                sum += rand[j];
//                // 没移位，所以只会固定值1111
//                orSum |= rand[j];
//            }
//            if (sum != orSum) {
//                SortUtils.printArr(rand);
//                System.out.println(sum);
//                System.out.println(orSum);
//                break;
//            }
//            sum = 0;
//            orSum = 0;

        // 精度丢失问题
//        BigDecimal bigDecimal = new BigDecimal("0.111");
//        System.out.println(bigDecimal);
//
//        //
//        BigDecimal ddd = BigDecimal.valueOf(2).
//                divide(BigDecimal.valueOf(3),2, RoundingMode.HALF_UP);
//        System.out.println(ddd);
//
//        //
//        BigDecimal a = new BigDecimal("49.22");
//        BigDecimal b = new BigDecimal("50.11");
////        BigDecimal c = a.divide(b).setScale(2, BigDecimal.ROUND_HALF_UP);
//        BigDecimal d = a.divide(b, 2, BigDecimal.ROUND_HALF_UP);
//
//        CommonUtils.printDivingLine();
//
//
//        BigDecimal e = BigDecimal.valueOf(1.0);
//        BigDecimal c = BigDecimal.valueOf(1.00);
//
//        System.out.println(e.equals(c));
//        System.out.println(e.compareTo(c));
//
//        CommonUtils.printDivingLine();
//        BigDecimal f = new BigDecimal(1.0);
//        BigDecimal g = new BigDecimal(1.00);
//        System.out.println(f.equals(g));
//        System.out.println(f.compareTo(g));


//        Integer aa = null;
//        if(aa == null){
//            System.out.println(true);
//        }
//        if(aa == 0L){
//            System.out.println(true);
//        }
//        if(0 == aa){
//            System.out.println(true);
//        }

        List<Integer> list = new ArrayList<>();
        list.add(1);
        list.add(2);
        list.add(3);
        list.add(4);
        list.add(5);
        list.add(6);
        for (Integer it : list) {
            if (it.equals(2)) {
                continue;
            }
            System.out.println(it);
        }


    }

}
